#ifndef GESTOREBUFFER_HPP
#define GESTOREBUFFER_HPP

/*  Classe config_s
**  contiene tutti i dati di connessione da ambo le parti
*/

class config_s
{
	public:
		//Parametri connessione IRC
		Irc_d descrittoreIrc;
		//Parametri connessione Skype
		string skypeChannel;
		//Varie ed eventuali
};

/*  Classe stats
**  contiene tutte le statistiche relative al server
*/

class stats {
    public:
        unsigned contaBestemmie;
}

/*	Classe GestoreBuffer
**
**
*/

class GestoreBuffer {
	private:
		Irc irconn;
		Skype skypeconn;
		config_s config;
		stats statistiche;
	public:
		GestoreBuffer ( config_s , stats );       //(configurazione,statistiche)
		                                          //Il costruttore configura l'oggetto e fa partire le
		                                          //connessioni con i server
		//Gestione delle informazioni
		void TuaNonnaGobba ( string );          //(messaggio,canaleDiProvenienza)
		                                        //In base al messaggio (e al canale al quale lo riceve)
		                                        //smista il traffico tra IRC e skype (dopo averlo controllato)
		//Metodi per la ricezione dei messaggi dai vari canali
		void ThreadIrc ();
		void ThreadSkype ();
		
		//Metodi per l'invio di messaggi nei vari canali
		void SendToIrc ();
		void SendToSkype ();
};

#endif

